import { AnyColumn } from "element-plus/es/components/table-v2/src/common";

export interface HomeQueryParams {
  page?: number;
  limit?: number;
  filter?: any;
}

export interface ListResult<T> {
  count: number;
  list: T[];
}

export interface RadioOption {
  label: string;
  value: string | number;
}

export interface FormRuleItem {
  required: boolean;
  message: string;
  trigger: string;
}

export interface OrderFieldItem {
  addTime: string;
  canDel: number;
  fieldId: number;
  formType: string; // 表单类型
  isAppFormShow: number; // 是否app表单中显示 0 不显示 1 显示 其他类型一样
  isAppShow: number; // app看板是否显示
  isFormShow: number; // pc表单是否显示
  isListShow: number; // pc看板是否显示
  key: string; // 字段的key
  label: string; // 字段描述
  option: Array<RadioOption>; // 选项列表
  orderId: number; // 对应工单id
  rule: Array<FormRuleItem>; // 表单规则
  sort: number; // 排序权重
  status: number; // 状态
  updateTime: string; // 修改时间
  value: any; // 字段的值
  [key: string]: any; // 防止无法添加自定义字段
}

export interface DelResult {
  count: number;
}

export interface SortDataParam {
  fieldId: number;
  changeFieldId: number;
}

// 工单详情
export interface OrderDetail<T> {
  [key: string]: any;
  extra?: T[];
}
